"""
example02 - 函数的定义和使用

计算组合数：C(M, N) = M! / N! / (M - N)!     (M >= N)

将来我们使用函数的时候，要么是Python标准库中或第三方库中的函数（别人写好可以直接用的），
要么是自定义的函数（需要自己编写，）

Author: Administrator
Date: 2024/1/19
"""
from math import factorial as f


def fac(num):
    """求阶乘"""
    result = 1
    for i in range(2, num + 1):
        result *= i
    return result


m = int(input('m = '))
n = int(input('n = '))

# # 计算m的阶乘
# fm = 1
# for num in range(2, m + 1):
#     fm *= num
#
# # 计算n的阶乘
# fn = 1
# for num in range(2, n + 1):
#     fn *= num
#
# # 计算m-n的阶乘
# fk = 1
# for num in range(2, m - n + 1):
#     fk *= num

# 计算C(M,N)的值
# print(f(m) // f(n) // f(m-n))
print(fac(m) // fac(n) // fac(m-n))